<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>GtkCellRenderer</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
<link rel="home" href="index.html" title="GTK+ 2 Reference Manual">
<link rel="up" href="TreeWidgetObjects.html" title="Tree, List and Icon Grid Widgets">
<link rel="prev" href="GtkCellLayout.html" title="GtkCellLayout">
<link rel="next" href="GtkCellEditable.html" title="GtkCellEditable">
<meta name="generator" content="GTK-Doc V1.18 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
<tr valign="middle">
<td><a accesskey="p" href="GtkCellLayout.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
<td><a accesskey="u" href="TreeWidgetObjects.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
<th width="100%" align="center">GTK+ 2 Reference Manual</th>
<td><a accesskey="n" href="GtkCellEditable.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
</tr>
<tr><td colspan="5" class="shortcuts">
<a href="#GtkCellRenderer.synopsis" class="shortcut">Top</a>
                   | 
                  <a href="#GtkCellRenderer.description" class="shortcut">Description</a>
                   | 
                  <a href="#GtkCellRenderer.object-hierarchy" class="shortcut">Object Hierarchy</a>
                   | 
                  <a href="#GtkCellRenderer.properties" class="shortcut">Properties</a>
                   | 
                  <a href="#GtkCellRenderer.signals" class="shortcut">Signals</a>
</td></tr>
</table>
<div class="refentry">
<a name="GtkCellRenderer"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="GtkCellRenderer.top_of_page"></a>GtkCellRenderer</span></h2>
<p>GtkCellRenderer — An object for rendering a single cell on a GdkDrawable</p>
</td>
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsynopsisdiv">
<a name="GtkCellRenderer.synopsis"></a><h2>Synopsis</h2>
<pre class="synopsis">
#include &lt;gtk/gtk.h&gt;

enum                <a class="link" href="GtkCellRenderer.html#GtkCellRendererState" title="enum GtkCellRendererState">GtkCellRendererState</a>;
enum                <a class="link" href="GtkCellRenderer.html#GtkCellRendererMode" title="enum GtkCellRendererMode">GtkCellRendererMode</a>;
struct              <a class="link" href="GtkCellRenderer.html#GtkCellRenderer-struct" title="struct GtkCellRenderer">GtkCellRenderer</a>;
struct              <a class="link" href="GtkCellRenderer.html#GtkCellRendererClass" title="struct GtkCellRendererClass">GtkCellRendererClass</a>;
<span class="returnvalue">void</span>                <a class="link" href="GtkCellRenderer.html#gtk-cell-renderer-get-size" title="gtk_cell_renderer_get_size ()">gtk_cell_renderer_get_size</a>          (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="type">GtkWidget</span></a> *widget</code></em>,
                                                         <em class="parameter"><code>const <a href="../gdk/gdk-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *cell_area</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *x_offset</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *y_offset</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *width</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *height</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GtkCellRenderer.html#gtk-cell-renderer-render" title="gtk_cell_renderer_render ()">gtk_cell_renderer_render</a>            (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>,
                                                         <em class="parameter"><code><a href="../gdk/gdk-Windows.html#GdkWindow"><span class="type">GdkWindow</span></a> *window</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="type">GtkWidget</span></a> *widget</code></em>,
                                                         <em class="parameter"><code>const <a href="../gdk/gdk-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *background_area</code></em>,
                                                         <em class="parameter"><code>const <a href="../gdk/gdk-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *cell_area</code></em>,
                                                         <em class="parameter"><code>const <a href="../gdk/gdk-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *expose_area</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GtkCellRenderer.html#GtkCellRendererState" title="enum GtkCellRendererState"><span class="type">GtkCellRendererState</span></a> flags</code></em>);
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GtkCellRenderer.html#gtk-cell-renderer-activate" title="gtk_cell_renderer_activate ()">gtk_cell_renderer_activate</a>          (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>,
                                                         <em class="parameter"><code><a href="../gdk/gdk-Event-Structures.html#GdkEvent"><span class="type">GdkEvent</span></a> *event</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="type">GtkWidget</span></a> *widget</code></em>,
                                                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *path</code></em>,
                                                         <em class="parameter"><code>const <a href="../gdk/gdk-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *background_area</code></em>,
                                                         <em class="parameter"><code>const <a href="../gdk/gdk-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *cell_area</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GtkCellRenderer.html#GtkCellRendererState" title="enum GtkCellRendererState"><span class="type">GtkCellRendererState</span></a> flags</code></em>);
<a class="link" href="GtkCellEditable.html" title="GtkCellEditable"><span class="returnvalue">GtkCellEditable</span></a> *   <a class="link" href="GtkCellRenderer.html#gtk-cell-renderer-start-editing" title="gtk_cell_renderer_start_editing ()">gtk_cell_renderer_start_editing</a>     (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>,
                                                         <em class="parameter"><code><a href="../gdk/gdk-Event-Structures.html#GdkEvent"><span class="type">GdkEvent</span></a> *event</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="type">GtkWidget</span></a> *widget</code></em>,
                                                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *path</code></em>,
                                                         <em class="parameter"><code>const <a href="../gdk/gdk-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *background_area</code></em>,
                                                         <em class="parameter"><code>const <a href="../gdk/gdk-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *cell_area</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GtkCellRenderer.html#GtkCellRendererState" title="enum GtkCellRendererState"><span class="type">GtkCellRendererState</span></a> flags</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GtkCellRenderer.html#gtk-cell-renderer-editing-canceled" title="gtk_cell_renderer_editing_canceled ()">gtk_cell_renderer_editing_canceled</a>  (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GtkCellRenderer.html#gtk-cell-renderer-stop-editing" title="gtk_cell_renderer_stop_editing ()">gtk_cell_renderer_stop_editing</a>      (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> canceled</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GtkCellRenderer.html#gtk-cell-renderer-get-fixed-size" title="gtk_cell_renderer_get_fixed_size ()">gtk_cell_renderer_get_fixed_size</a>    (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *width</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *height</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GtkCellRenderer.html#gtk-cell-renderer-set-fixed-size" title="gtk_cell_renderer_set_fixed_size ()">gtk_cell_renderer_set_fixed_size</a>    (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> width</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> height</code></em>);
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GtkCellRenderer.html#gtk-cell-renderer-get-visible" title="gtk_cell_renderer_get_visible ()">gtk_cell_renderer_get_visible</a>       (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GtkCellRenderer.html#gtk-cell-renderer-set-visible" title="gtk_cell_renderer_set_visible ()">gtk_cell_renderer_set_visible</a>       (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> visible</code></em>);
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GtkCellRenderer.html#gtk-cell-renderer-get-sensitive" title="gtk_cell_renderer_get_sensitive ()">gtk_cell_renderer_get_sensitive</a>     (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GtkCellRenderer.html#gtk-cell-renderer-set-sensitive" title="gtk_cell_renderer_set_sensitive ()">gtk_cell_renderer_set_sensitive</a>     (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> sensitive</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GtkCellRenderer.html#gtk-cell-renderer-get-alignment" title="gtk_cell_renderer_get_alignment ()">gtk_cell_renderer_get_alignment</a>     (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> *xalign</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> *yalign</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GtkCellRenderer.html#gtk-cell-renderer-set-alignment" title="gtk_cell_renderer_set_alignment ()">gtk_cell_renderer_set_alignment</a>     (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> xalign</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> yalign</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GtkCellRenderer.html#gtk-cell-renderer-get-padding" title="gtk_cell_renderer_get_padding ()">gtk_cell_renderer_get_padding</a>       (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *xpad</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *ypad</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GtkCellRenderer.html#gtk-cell-renderer-set-padding" title="gtk_cell_renderer_set_padding ()">gtk_cell_renderer_set_padding</a>       (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> xpad</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> ypad</code></em>);
</pre>
</div>
<div class="refsect1">
<a name="GtkCellRenderer.object-hierarchy"></a><h2>Object Hierarchy</h2>
<pre class="synopsis">
  <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
   +----<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         +----<a class="link" href="GtkObject.html" title="GtkObject">GtkObject</a>
               +----GtkCellRenderer
                     +----<a class="link" href="GtkCellRendererText.html" title="GtkCellRendererText">GtkCellRendererText</a>
                     +----<a class="link" href="GtkCellRendererPixbuf.html" title="GtkCellRendererPixbuf">GtkCellRendererPixbuf</a>
                     +----<a class="link" href="GtkCellRendererProgress.html" title="GtkCellRendererProgress">GtkCellRendererProgress</a>
                     +----<a class="link" href="GtkCellRendererSpinner.html" title="GtkCellRendererSpinner">GtkCellRendererSpinner</a>
                     +----<a class="link" href="GtkCellRendererToggle.html" title="GtkCellRendererToggle">GtkCellRendererToggle</a>
</pre>
</div>
<div class="refsect1">
<a name="GtkCellRenderer.properties"></a><h2>Properties</h2>
<pre class="synopsis">
  "<a class="link" href="GtkCellRenderer.html#GtkCellRenderer--cell-background" title='The "cell-background" property'>cell-background</a>"          <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>*                : Write
  "<a class="link" href="GtkCellRenderer.html#GtkCellRenderer--cell-background-gdk" title='The "cell-background-gdk" property'>cell-background-gdk</a>"      <a href="../gdk/gdk-Colormaps-and-Colors.html#GdkColor"><span class="type">GdkColor</span></a>*             : Read / Write
  "<a class="link" href="GtkCellRenderer.html#GtkCellRenderer--cell-background-set" title='The "cell-background-set" property'>cell-background-set</a>"      <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write
  "<a class="link" href="GtkCellRenderer.html#GtkCellRenderer--editing" title='The "editing" property'>editing</a>"                  <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read
  "<a class="link" href="GtkCellRenderer.html#GtkCellRenderer--height" title='The "height" property'>height</a>"                   <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a>                  : Read / Write
  "<a class="link" href="GtkCellRenderer.html#GtkCellRenderer--is-expanded" title='The "is-expanded" property'>is-expanded</a>"              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write
  "<a class="link" href="GtkCellRenderer.html#GtkCellRenderer--is-expander" title='The "is-expander" property'>is-expander</a>"              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write
  "<a class="link" href="GtkCellRenderer.html#GtkCellRenderer--mode" title='The "mode" property'>mode</a>"                     <a class="link" href="GtkCellRenderer.html#GtkCellRendererMode" title="enum GtkCellRendererMode"><span class="type">GtkCellRendererMode</span></a>   : Read / Write
  "<a class="link" href="GtkCellRenderer.html#GtkCellRenderer--sensitive" title='The "sensitive" property'>sensitive</a>"                <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write
  "<a class="link" href="GtkCellRenderer.html#GtkCellRenderer--visible" title='The "visible" property'>visible</a>"                  <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write
  "<a class="link" href="GtkCellRenderer.html#GtkCellRenderer--width" title='The "width" property'>width</a>"                    <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a>                  : Read / Write
  "<a class="link" href="GtkCellRenderer.html#GtkCellRenderer--xalign" title='The "xalign" property'>xalign</a>"                   <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a>                : Read / Write
  "<a class="link" href="GtkCellRenderer.html#GtkCellRenderer--xpad" title='The "xpad" property'>xpad</a>"                     <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>                 : Read / Write
  "<a class="link" href="GtkCellRenderer.html#GtkCellRenderer--yalign" title='The "yalign" property'>yalign</a>"                   <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a>                : Read / Write
  "<a class="link" href="GtkCellRenderer.html#GtkCellRenderer--ypad" title='The "ypad" property'>ypad</a>"                     <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>                 : Read / Write
</pre>
</div>
<div class="refsect1">
<a name="GtkCellRenderer.signals"></a><h2>Signals</h2>
<pre class="synopsis">
  "<a class="link" href="GtkCellRenderer.html#GtkCellRenderer-editing-canceled" title='The "editing-canceled" signal'>editing-canceled</a>"                               : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-FIRST:CAPS"><code class="literal">Run First</code></a>
  "<a class="link" href="GtkCellRenderer.html#GtkCellRenderer-editing-started" title='The "editing-started" signal'>editing-started</a>"                                : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-FIRST:CAPS"><code class="literal">Run First</code></a>
</pre>
</div>
<div class="refsect1">
<a name="GtkCellRenderer.description"></a><h2>Description</h2>
<p>
The <a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> is a base class of a set of objects used for
rendering a cell to a <a href="../gdk/gdk-Drawing-Primitives.html#GdkDrawable"><span class="type">GdkDrawable</span></a>.  These objects are used primarily by
the <a class="link" href="GtkTreeView.html" title="GtkTreeView"><span class="type">GtkTreeView</span></a> widget, though they aren't tied to them in any
specific way.  It is worth noting that <a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> is not a
<a class="link" href="GtkWidget.html" title="GtkWidget"><span class="type">GtkWidget</span></a> and cannot be treated as such.
</p>
<p>
The primary use of a <a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> is for drawing a certain graphical
elements on a <a href="../gdk/gdk-Drawing-Primitives.html#GdkDrawable"><span class="type">GdkDrawable</span></a>.  Typically, one cell renderer is used to
draw many cells on the screen.  To this extent, it isn't expected that a
CellRenderer keep any permanent state around.  Instead, any state is set
just prior to use using <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>s property system.  Then, the
cell is measured using <a class="link" href="GtkCellRenderer.html#gtk-cell-renderer-get-size" title="gtk_cell_renderer_get_size ()"><code class="function">gtk_cell_renderer_get_size()</code></a>.  Finally, the cell
is rendered in the correct location using <a class="link" href="GtkCellRenderer.html#gtk-cell-renderer-render" title="gtk_cell_renderer_render ()"><code class="function">gtk_cell_renderer_render()</code></a>.
</p>
<p>
There are a number of rules that must be followed when writing a new
<a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a>.  First and formost, it's important that a certain set
of properties will always yield a cell renderer of the same size,
barring a <a class="link" href="GtkStyle.html" title="Styles"><span class="type">GtkStyle</span></a> change.  The <a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> also has a number of
generic properties that are expected to be honored by all children.
</p>
<p>
Beyond merely rendering a cell, cell renderers can optionally
provide active user interface elements. A cell renderer can be
<em class="firstterm">activatable</em> like <a class="link" href="GtkCellRendererToggle.html" title="GtkCellRendererToggle"><span class="type">GtkCellRendererToggle</span></a>,
which toggles when it gets activated by a mouse click, or it can be
<em class="firstterm">editable</em> like <a class="link" href="GtkCellRendererText.html" title="GtkCellRendererText"><span class="type">GtkCellRendererText</span></a>, which
allows the user to edit the text using a <a class="link" href="GtkEntry.html" title="GtkEntry"><span class="type">GtkEntry</span></a>.
To make a cell renderer activatable or editable, you have to
implement the <em class="parameter"><code>activate</code></em> or <em class="parameter"><code>start_editing</code></em> virtual functions,
respectively.
</p>
</div>
<div class="refsect1">
<a name="GtkCellRenderer.details"></a><h2>Details</h2>
<div class="refsect2">
<a name="GtkCellRendererState"></a><h3>enum GtkCellRendererState</h3>
<pre class="programlisting">typedef enum {
  GTK_CELL_RENDERER_SELECTED    = 1 &lt;&lt; 0,
  GTK_CELL_RENDERER_PRELIT      = 1 &lt;&lt; 1,
  GTK_CELL_RENDERER_INSENSITIVE = 1 &lt;&lt; 2,
  /* this flag means the cell is in the sort column/row */
  GTK_CELL_RENDERER_SORTED      = 1 &lt;&lt; 3,
  GTK_CELL_RENDERER_FOCUSED     = 1 &lt;&lt; 4
} GtkCellRendererState;
</pre>
<p>
Tells how a cell is to be rendererd.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><a name="GTK-CELL-RENDERER-SELECTED:CAPS"></a><span class="term"><code class="literal">GTK_CELL_RENDERER_SELECTED</code></span></p></td>
<td>The cell is currently selected, and
probably has a selection colored background to render to.
</td>
</tr>
<tr>
<td><p><a name="GTK-CELL-RENDERER-PRELIT:CAPS"></a><span class="term"><code class="literal">GTK_CELL_RENDERER_PRELIT</code></span></p></td>
<td>The mouse is hovering over the cell.
</td>
</tr>
<tr>
<td><p><a name="GTK-CELL-RENDERER-INSENSITIVE:CAPS"></a><span class="term"><code class="literal">GTK_CELL_RENDERER_INSENSITIVE</code></span></p></td>
<td>The cell is drawn in an insensitive manner
</td>
</tr>
<tr>
<td><p><a name="GTK-CELL-RENDERER-SORTED:CAPS"></a><span class="term"><code class="literal">GTK_CELL_RENDERER_SORTED</code></span></p></td>
<td>The cell is in a sorted row
</td>
</tr>
<tr>
<td><p><a name="GTK-CELL-RENDERER-FOCUSED:CAPS"></a><span class="term"><code class="literal">GTK_CELL_RENDERER_FOCUSED</code></span></p></td>
<td>The cell is in the focus row.
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="GtkCellRendererMode"></a><h3>enum GtkCellRendererMode</h3>
<pre class="programlisting">typedef enum {
  GTK_CELL_RENDERER_MODE_INERT,
  GTK_CELL_RENDERER_MODE_ACTIVATABLE,
  GTK_CELL_RENDERER_MODE_EDITABLE
} GtkCellRendererMode;
</pre>
<p>
Identifies how the user can interact with a particular cell.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><a name="GTK-CELL-RENDERER-MODE-INERT:CAPS"></a><span class="term"><code class="literal">GTK_CELL_RENDERER_MODE_INERT</code></span></p></td>
<td>The cell is just for display
and cannot be interacted with.  Note that this doesn't mean that eg. the
row being drawn can't be selected -- just that a particular element of
it cannot be individually modified.
</td>
</tr>
<tr>
<td><p><a name="GTK-CELL-RENDERER-MODE-ACTIVATABLE:CAPS"></a><span class="term"><code class="literal">GTK_CELL_RENDERER_MODE_ACTIVATABLE</code></span></p></td>
<td>The cell can be clicked.
</td>
</tr>
<tr>
<td><p><a name="GTK-CELL-RENDERER-MODE-EDITABLE:CAPS"></a><span class="term"><code class="literal">GTK_CELL_RENDERER_MODE_EDITABLE</code></span></p></td>
<td>The cell can be edited or otherwise modified.
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="GtkCellRenderer-struct"></a><h3>struct GtkCellRenderer</h3>
<pre class="programlisting">struct GtkCellRenderer;</pre>
<p>
</p>
</div>
<hr>
<div class="refsect2">
<a name="GtkCellRendererClass"></a><h3>struct GtkCellRendererClass</h3>
<pre class="programlisting">struct GtkCellRendererClass {
  GtkObjectClass parent_class;

  /* vtable - not signals */
  void             (* get_size)      (GtkCellRenderer      *cell,
				      GtkWidget            *widget,
				      GdkRectangle         *cell_area,
				      gint                 *x_offset,
				      gint                 *y_offset,
				      gint                 *width,
				      gint                 *height);
  void             (* render)        (GtkCellRenderer      *cell,
				      GdkDrawable          *window,
				      GtkWidget            *widget,
				      GdkRectangle         *background_area,
				      GdkRectangle         *cell_area,
				      GdkRectangle         *expose_area,
				      GtkCellRendererState  flags);
  gboolean         (* activate)      (GtkCellRenderer      *cell,
				      GdkEvent             *event,
				      GtkWidget            *widget,
				      const gchar          *path,
				      GdkRectangle         *background_area,
				      GdkRectangle         *cell_area,
				      GtkCellRendererState  flags);
  GtkCellEditable *(* start_editing) (GtkCellRenderer      *cell,
				      GdkEvent             *event,
				      GtkWidget            *widget,
				      const gchar          *path,
				      GdkRectangle         *background_area,
				      GdkRectangle         *cell_area,
				      GtkCellRendererState  flags);

  /* Signals */
  void (* editing_canceled) (GtkCellRenderer *cell);
  void (* editing_started)  (GtkCellRenderer *cell,
			     GtkCellEditable *editable,
			     const gchar     *path);

  /* Padding for future expansion */
  void (*_gtk_reserved1) (void);
  void (*_gtk_reserved2) (void);
};
</pre>
<p>
</p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-cell-renderer-get-size"></a><h3>gtk_cell_renderer_get_size ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                gtk_cell_renderer_get_size          (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="type">GtkWidget</span></a> *widget</code></em>,
                                                         <em class="parameter"><code>const <a href="../gdk/gdk-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *cell_area</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *x_offset</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *y_offset</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *width</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *height</code></em>);</pre>
<p>
Obtains the width and height needed to render the cell. Used by view 
widgets to determine the appropriate size for the cell_area passed to
<a class="link" href="GtkCellRenderer.html#gtk-cell-renderer-render" title="gtk_cell_renderer_render ()"><code class="function">gtk_cell_renderer_render()</code></a>.  If <em class="parameter"><code>cell_area</code></em> is not <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, fills in the
x and y offsets (if set) of the cell relative to this location. 
</p>
<p>
Please note that the values set in <em class="parameter"><code>width</code></em> and <em class="parameter"><code>height</code></em>, as well as those 
in <em class="parameter"><code>x_offset</code></em> and <em class="parameter"><code>y_offset</code></em> are inclusive of the xpad and ypad properties.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>cell</code></em> :</span></p></td>
<td>a <a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>widget</code></em> :</span></p></td>
<td>the widget the renderer is rendering to</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cell_area</code></em> :</span></p></td>
<td>The area a cell will be allocated, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>x_offset</code></em> :</span></p></td>
<td>location to return x offset of cell relative to <em class="parameter"><code>cell_area</code></em>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>y_offset</code></em> :</span></p></td>
<td>location to return y offset of cell relative to <em class="parameter"><code>cell_area</code></em>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>width</code></em> :</span></p></td>
<td>location to return width needed to render a cell, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>height</code></em> :</span></p></td>
<td>location to return height needed to render a cell, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-cell-renderer-render"></a><h3>gtk_cell_renderer_render ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                gtk_cell_renderer_render            (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>,
                                                         <em class="parameter"><code><a href="../gdk/gdk-Windows.html#GdkWindow"><span class="type">GdkWindow</span></a> *window</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="type">GtkWidget</span></a> *widget</code></em>,
                                                         <em class="parameter"><code>const <a href="../gdk/gdk-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *background_area</code></em>,
                                                         <em class="parameter"><code>const <a href="../gdk/gdk-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *cell_area</code></em>,
                                                         <em class="parameter"><code>const <a href="../gdk/gdk-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *expose_area</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GtkCellRenderer.html#GtkCellRendererState" title="enum GtkCellRendererState"><span class="type">GtkCellRendererState</span></a> flags</code></em>);</pre>
<p>
Invokes the virtual render function of the <a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a>. The three
passed-in rectangles are areas of <em class="parameter"><code>window</code></em>. Most renderers will draw within
<em class="parameter"><code>cell_area</code></em>; the xalign, yalign, xpad, and ypad fields of the <a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a>
should be honored with respect to <em class="parameter"><code>cell_area</code></em>. <em class="parameter"><code>background_area</code></em> includes the
blank space around the cell, and also the area containing the tree expander;
so the <em class="parameter"><code>background_area</code></em> rectangles for all cells tile to cover the entire
<em class="parameter"><code>window</code></em>.  <em class="parameter"><code>expose_area</code></em> is a clip rectangle.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>cell</code></em> :</span></p></td>
<td>a <a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>window</code></em> :</span></p></td>
<td>a <a href="../gdk/gdk-Drawing-Primitives.html#GdkDrawable"><span class="type">GdkDrawable</span></a> to draw to</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>widget</code></em> :</span></p></td>
<td>the widget owning <em class="parameter"><code>window</code></em>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>background_area</code></em> :</span></p></td>
<td>entire cell area (including tree expanders and maybe
padding on the sides)</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cell_area</code></em> :</span></p></td>
<td>area normally rendered by a cell renderer</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>expose_area</code></em> :</span></p></td>
<td>area that actually needs updating</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>flags that affect rendering</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-cell-renderer-activate"></a><h3>gtk_cell_renderer_activate ()</h3>
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            gtk_cell_renderer_activate          (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>,
                                                         <em class="parameter"><code><a href="../gdk/gdk-Event-Structures.html#GdkEvent"><span class="type">GdkEvent</span></a> *event</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="type">GtkWidget</span></a> *widget</code></em>,
                                                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *path</code></em>,
                                                         <em class="parameter"><code>const <a href="../gdk/gdk-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *background_area</code></em>,
                                                         <em class="parameter"><code>const <a href="../gdk/gdk-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *cell_area</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GtkCellRenderer.html#GtkCellRendererState" title="enum GtkCellRendererState"><span class="type">GtkCellRendererState</span></a> flags</code></em>);</pre>
<p>
Passes an activate event to the cell renderer for possible processing.  
Some cell renderers may use events; for example, <a class="link" href="GtkCellRendererToggle.html" title="GtkCellRendererToggle"><span class="type">GtkCellRendererToggle</span></a> 
toggles when it gets a mouse click.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>cell</code></em> :</span></p></td>
<td>a <a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>event</code></em> :</span></p></td>
<td>a <a href="../gdk/gdk-Event-Structures.html#GdkEvent"><span class="type">GdkEvent</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>widget</code></em> :</span></p></td>
<td>widget that received the event</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>path</code></em> :</span></p></td>
<td>widget-dependent string representation of the event location;
e.g. for <a class="link" href="GtkTreeView.html" title="GtkTreeView"><span class="type">GtkTreeView</span></a>, a string representation of <a class="link" href="GtkTreeModel.html#GtkTreePath"><span class="type">GtkTreePath</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>background_area</code></em> :</span></p></td>
<td>background area as passed to <a class="link" href="GtkCellRenderer.html#gtk-cell-renderer-render" title="gtk_cell_renderer_render ()"><code class="function">gtk_cell_renderer_render()</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cell_area</code></em> :</span></p></td>
<td>cell area as passed to <a class="link" href="GtkCellRenderer.html#gtk-cell-renderer-render" title="gtk_cell_renderer_render ()"><code class="function">gtk_cell_renderer_render()</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>render flags</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the event was consumed/handled</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-cell-renderer-start-editing"></a><h3>gtk_cell_renderer_start_editing ()</h3>
<pre class="programlisting"><a class="link" href="GtkCellEditable.html" title="GtkCellEditable"><span class="returnvalue">GtkCellEditable</span></a> *   gtk_cell_renderer_start_editing     (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>,
                                                         <em class="parameter"><code><a href="../gdk/gdk-Event-Structures.html#GdkEvent"><span class="type">GdkEvent</span></a> *event</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="type">GtkWidget</span></a> *widget</code></em>,
                                                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *path</code></em>,
                                                         <em class="parameter"><code>const <a href="../gdk/gdk-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *background_area</code></em>,
                                                         <em class="parameter"><code>const <a href="../gdk/gdk-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *cell_area</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GtkCellRenderer.html#GtkCellRendererState" title="enum GtkCellRendererState"><span class="type">GtkCellRendererState</span></a> flags</code></em>);</pre>
<p>
Passes an activate event to the cell renderer for possible processing.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>cell</code></em> :</span></p></td>
<td>a <a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>event</code></em> :</span></p></td>
<td>a <a href="../gdk/gdk-Event-Structures.html#GdkEvent"><span class="type">GdkEvent</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>widget</code></em> :</span></p></td>
<td>widget that received the event</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>path</code></em> :</span></p></td>
<td>widget-dependent string representation of the event location;
e.g. for <a class="link" href="GtkTreeView.html" title="GtkTreeView"><span class="type">GtkTreeView</span></a>, a string representation of <a class="link" href="GtkTreeModel.html#GtkTreePath"><span class="type">GtkTreePath</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>background_area</code></em> :</span></p></td>
<td>background area as passed to <a class="link" href="GtkCellRenderer.html#gtk-cell-renderer-render" title="gtk_cell_renderer_render ()"><code class="function">gtk_cell_renderer_render()</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cell_area</code></em> :</span></p></td>
<td>cell area as passed to <a class="link" href="GtkCellRenderer.html#gtk-cell-renderer-render" title="gtk_cell_renderer_render ()"><code class="function">gtk_cell_renderer_render()</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>render flags</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>A new <a class="link" href="GtkCellEditable.html" title="GtkCellEditable"><span class="type">GtkCellEditable</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-cell-renderer-editing-canceled"></a><h3>gtk_cell_renderer_editing_canceled ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                gtk_cell_renderer_editing_canceled  (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>);</pre>
<div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
<h3 class="title">Warning</h3>
<p><code class="literal">gtk_cell_renderer_editing_canceled</code> has been deprecated since version 2.6 and should not be used in newly-written code. Use <a class="link" href="GtkCellRenderer.html#gtk-cell-renderer-stop-editing" title="gtk_cell_renderer_stop_editing ()"><code class="function">gtk_cell_renderer_stop_editing()</code></a> instead</p>
</div>
<p>
Causes the cell renderer to emit the <a class="link" href="GtkCellRenderer.html#GtkCellRenderer-editing-canceled" title='The "editing-canceled" signal'><span class="type">"editing-canceled"</span></a> 
signal.  
</p>
<p>
This function is for use only by implementations of cell renderers that 
need to notify the client program that an editing process was canceled 
and the changes were not committed.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><em class="parameter"><code>cell</code></em> :</span></p></td>
<td>A <a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a>
</td>
</tr></tbody>
</table></div>
<p class="since">Since 2.4</p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-cell-renderer-stop-editing"></a><h3>gtk_cell_renderer_stop_editing ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                gtk_cell_renderer_stop_editing      (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> canceled</code></em>);</pre>
<p>
Informs the cell renderer that the editing is stopped.
If <em class="parameter"><code>canceled</code></em> is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, the cell renderer will emit the 
<a class="link" href="GtkCellRenderer.html#GtkCellRenderer-editing-canceled" title='The "editing-canceled" signal'><span class="type">"editing-canceled"</span></a> signal. 
</p>
<p>
This function should be called by cell renderer implementations 
in response to the <a class="link" href="GtkCellEditable.html#GtkCellEditable-editing-done" title='The "editing-done" signal'><span class="type">"editing-done"</span></a> signal of 
<a class="link" href="GtkCellEditable.html" title="GtkCellEditable"><span class="type">GtkCellEditable</span></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>cell</code></em> :</span></p></td>
<td>A <a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>canceled</code></em> :</span></p></td>
<td>
<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the editing has been canceled</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.6</p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-cell-renderer-get-fixed-size"></a><h3>gtk_cell_renderer_get_fixed_size ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                gtk_cell_renderer_get_fixed_size    (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *width</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *height</code></em>);</pre>
<p>
Fills in <em class="parameter"><code>width</code></em> and <em class="parameter"><code>height</code></em> with the appropriate size of <em class="parameter"><code>cell</code></em>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>cell</code></em> :</span></p></td>
<td>A <a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>width</code></em> :</span></p></td>
<td>location to fill in with the fixed width of the cell, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>height</code></em> :</span></p></td>
<td>location to fill in with the fixed height of the cell, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-cell-renderer-set-fixed-size"></a><h3>gtk_cell_renderer_set_fixed_size ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                gtk_cell_renderer_set_fixed_size    (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> width</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> height</code></em>);</pre>
<p>
Sets the renderer size to be explicit, independent of the properties set.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>cell</code></em> :</span></p></td>
<td>A <a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>width</code></em> :</span></p></td>
<td>the width of the cell renderer, or -1</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>height</code></em> :</span></p></td>
<td>the height of the cell renderer, or -1</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-cell-renderer-get-visible"></a><h3>gtk_cell_renderer_get_visible ()</h3>
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            gtk_cell_renderer_get_visible       (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>);</pre>
<p>
Returns the cell renderer's visibility.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>cell</code></em> :</span></p></td>
<td>A <a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the cell renderer is visible</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.18</p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-cell-renderer-set-visible"></a><h3>gtk_cell_renderer_set_visible ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                gtk_cell_renderer_set_visible       (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> visible</code></em>);</pre>
<p>
Sets the cell renderer's visibility.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>cell</code></em> :</span></p></td>
<td>A <a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>visible</code></em> :</span></p></td>
<td>the visibility of the cell</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.18</p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-cell-renderer-get-sensitive"></a><h3>gtk_cell_renderer_get_sensitive ()</h3>
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            gtk_cell_renderer_get_sensitive     (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>);</pre>
<p>
Returns the cell renderer's sensitivity.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>cell</code></em> :</span></p></td>
<td>A <a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the cell renderer is sensitive</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.18</p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-cell-renderer-set-sensitive"></a><h3>gtk_cell_renderer_set_sensitive ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                gtk_cell_renderer_set_sensitive     (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> sensitive</code></em>);</pre>
<p>
Sets the cell renderer's sensitivity.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>cell</code></em> :</span></p></td>
<td>A <a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>sensitive</code></em> :</span></p></td>
<td>the sensitivity of the cell</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.18</p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-cell-renderer-get-alignment"></a><h3>gtk_cell_renderer_get_alignment ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                gtk_cell_renderer_get_alignment     (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> *xalign</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> *yalign</code></em>);</pre>
<p>
Fills in <em class="parameter"><code>xalign</code></em> and <em class="parameter"><code>yalign</code></em> with the appropriate values of <em class="parameter"><code>cell</code></em>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>cell</code></em> :</span></p></td>
<td>A <a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>xalign</code></em> :</span></p></td>
<td>location to fill in with the x alignment of the cell, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>yalign</code></em> :</span></p></td>
<td>location to fill in with the y alignment of the cell, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.18</p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-cell-renderer-set-alignment"></a><h3>gtk_cell_renderer_set_alignment ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                gtk_cell_renderer_set_alignment     (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> xalign</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> yalign</code></em>);</pre>
<p>
Sets the renderer's alignment within its available space.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>cell</code></em> :</span></p></td>
<td>A <a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>xalign</code></em> :</span></p></td>
<td>the x alignment of the cell renderer</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>yalign</code></em> :</span></p></td>
<td>the y alignment of the cell renderer</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.18</p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-cell-renderer-get-padding"></a><h3>gtk_cell_renderer_get_padding ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                gtk_cell_renderer_get_padding       (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *xpad</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *ypad</code></em>);</pre>
<p>
Fills in <em class="parameter"><code>xpad</code></em> and <em class="parameter"><code>ypad</code></em> with the appropriate values of <em class="parameter"><code>cell</code></em>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>cell</code></em> :</span></p></td>
<td>A <a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>xpad</code></em> :</span></p></td>
<td>location to fill in with the x padding of the cell, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>ypad</code></em> :</span></p></td>
<td>location to fill in with the y padding of the cell, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.18</p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-cell-renderer-set-padding"></a><h3>gtk_cell_renderer_set_padding ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                gtk_cell_renderer_set_padding       (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> xpad</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> ypad</code></em>);</pre>
<p>
Sets the renderer's padding.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>cell</code></em> :</span></p></td>
<td>A <a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>xpad</code></em> :</span></p></td>
<td>the x padding of the cell renderer</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>ypad</code></em> :</span></p></td>
<td>the y padding of the cell renderer</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.18</p>
</div>
</div>
<div class="refsect1">
<a name="GtkCellRenderer.property-details"></a><h2>Property Details</h2>
<div class="refsect2">
<a name="GtkCellRenderer--cell-background"></a><h3>The <code class="literal">"cell-background"</code> property</h3>
<pre class="programlisting">  "cell-background"          <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>*                : Write</pre>
<p>Cell background color as a string.</p>
<p>Default value: NULL</p>
</div>
<hr>
<div class="refsect2">
<a name="GtkCellRenderer--cell-background-gdk"></a><h3>The <code class="literal">"cell-background-gdk"</code> property</h3>
<pre class="programlisting">  "cell-background-gdk"      <a href="../gdk/gdk-Colormaps-and-Colors.html#GdkColor"><span class="type">GdkColor</span></a>*             : Read / Write</pre>
<p>Cell background color as a GdkColor.</p>
</div>
<hr>
<div class="refsect2">
<a name="GtkCellRenderer--cell-background-set"></a><h3>The <code class="literal">"cell-background-set"</code> property</h3>
<pre class="programlisting">  "cell-background-set"      <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write</pre>
<p>Whether this tag affects the cell background color.</p>
<p>Default value: FALSE</p>
</div>
<hr>
<div class="refsect2">
<a name="GtkCellRenderer--editing"></a><h3>The <code class="literal">"editing"</code> property</h3>
<pre class="programlisting">  "editing"                  <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read</pre>
<p>Whether the cell renderer is currently in editing mode.</p>
<p>Default value: FALSE</p>
</div>
<hr>
<div class="refsect2">
<a name="GtkCellRenderer--height"></a><h3>The <code class="literal">"height"</code> property</h3>
<pre class="programlisting">  "height"                   <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a>                  : Read / Write</pre>
<p>The fixed height.</p>
<p>Allowed values: &gt;= G_MAXULONG</p>
<p>Default value: -1</p>
</div>
<hr>
<div class="refsect2">
<a name="GtkCellRenderer--is-expanded"></a><h3>The <code class="literal">"is-expanded"</code> property</h3>
<pre class="programlisting">  "is-expanded"              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write</pre>
<p>Row is an expander row, and is expanded.</p>
<p>Default value: FALSE</p>
</div>
<hr>
<div class="refsect2">
<a name="GtkCellRenderer--is-expander"></a><h3>The <code class="literal">"is-expander"</code> property</h3>
<pre class="programlisting">  "is-expander"              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write</pre>
<p>Row has children.</p>
<p>Default value: FALSE</p>
</div>
<hr>
<div class="refsect2">
<a name="GtkCellRenderer--mode"></a><h3>The <code class="literal">"mode"</code> property</h3>
<pre class="programlisting">  "mode"                     <a class="link" href="GtkCellRenderer.html#GtkCellRendererMode" title="enum GtkCellRendererMode"><span class="type">GtkCellRendererMode</span></a>   : Read / Write</pre>
<p>Editable mode of the CellRenderer.</p>
<p>Default value: GTK_CELL_RENDERER_MODE_INERT</p>
</div>
<hr>
<div class="refsect2">
<a name="GtkCellRenderer--sensitive"></a><h3>The <code class="literal">"sensitive"</code> property</h3>
<pre class="programlisting">  "sensitive"                <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write</pre>
<p>Display the cell sensitive.</p>
<p>Default value: TRUE</p>
</div>
<hr>
<div class="refsect2">
<a name="GtkCellRenderer--visible"></a><h3>The <code class="literal">"visible"</code> property</h3>
<pre class="programlisting">  "visible"                  <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write</pre>
<p>Display the cell.</p>
<p>Default value: TRUE</p>
</div>
<hr>
<div class="refsect2">
<a name="GtkCellRenderer--width"></a><h3>The <code class="literal">"width"</code> property</h3>
<pre class="programlisting">  "width"                    <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a>                  : Read / Write</pre>
<p>The fixed width.</p>
<p>Allowed values: &gt;= G_MAXULONG</p>
<p>Default value: -1</p>
</div>
<hr>
<div class="refsect2">
<a name="GtkCellRenderer--xalign"></a><h3>The <code class="literal">"xalign"</code> property</h3>
<pre class="programlisting">  "xalign"                   <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a>                : Read / Write</pre>
<p>The x-align.</p>
<p>Allowed values: [0,1]</p>
<p>Default value: 0.5</p>
</div>
<hr>
<div class="refsect2">
<a name="GtkCellRenderer--xpad"></a><h3>The <code class="literal">"xpad"</code> property</h3>
<pre class="programlisting">  "xpad"                     <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>                 : Read / Write</pre>
<p>The xpad.</p>
<p>Default value: 0</p>
</div>
<hr>
<div class="refsect2">
<a name="GtkCellRenderer--yalign"></a><h3>The <code class="literal">"yalign"</code> property</h3>
<pre class="programlisting">  "yalign"                   <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a>                : Read / Write</pre>
<p>The y-align.</p>
<p>Allowed values: [0,1]</p>
<p>Default value: 0.5</p>
</div>
<hr>
<div class="refsect2">
<a name="GtkCellRenderer--ypad"></a><h3>The <code class="literal">"ypad"</code> property</h3>
<pre class="programlisting">  "ypad"                     <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>                 : Read / Write</pre>
<p>The ypad.</p>
<p>Default value: 0</p>
</div>
</div>
<div class="refsect1">
<a name="GtkCellRenderer.signal-details"></a><h2>Signal Details</h2>
<div class="refsect2">
<a name="GtkCellRenderer-editing-canceled"></a><h3>The <code class="literal">"editing-canceled"</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                user_function                      (<a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *renderer,
                                                        <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>         user_data)      : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-FIRST:CAPS"><code class="literal">Run First</code></a></pre>
<p>
This signal gets emitted when the user cancels the process of editing a
cell.  For example, an editable cell renderer could be written to cancel
editing when the user presses Escape.
</p>
<p>
See also: <a class="link" href="GtkCellRenderer.html#gtk-cell-renderer-stop-editing" title="gtk_cell_renderer_stop_editing ()"><code class="function">gtk_cell_renderer_stop_editing()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>renderer</code></em> :</span></p></td>
<td>the object which received the signal</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>user data set when the signal handler was connected.</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.4</p>
</div>
<hr>
<div class="refsect2">
<a name="GtkCellRenderer-editing-started"></a><h3>The <code class="literal">"editing-started"</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                user_function                      (<a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *renderer,
                                                        <a class="link" href="GtkCellEditable.html" title="GtkCellEditable"><span class="type">GtkCellEditable</span></a> *editable,
                                                        <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>           *path,
                                                        <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>         user_data)      : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-FIRST:CAPS"><code class="literal">Run First</code></a></pre>
<p>
This signal gets emitted when a cell starts to be edited.
The intended use of this signal is to do special setup
on <em class="parameter"><code>editable</code></em>, e.g. adding a <a class="link" href="GtkEntryCompletion.html" title="GtkEntryCompletion"><span class="type">GtkEntryCompletion</span></a> or setting
up additional columns in a <a class="link" href="GtkComboBox.html" title="GtkComboBox"><span class="type">GtkComboBox</span></a>.
</p>
<p>
Note that GTK+ doesn't guarantee that cell renderers will
continue to use the same kind of widget for editing in future
releases, therefore you should check the type of <em class="parameter"><code>editable</code></em>
before doing any specific setup, as in the following example:
</p>
<div class="informalexample">
  <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
    <tbody>
      <tr>
        <td class="listing_lines" align="right"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15</pre></td>
        <td class="listing_code"><pre class="programlisting"><span class="keyword">static</span><span class="normal"> </span><span class="type">void</span>
<span class="function">text_editing_started</span><span class="normal"> </span><span class="symbol">(</span><span class="usertype">GtkCellRenderer</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">cell</span><span class="symbol">,</span>
<span class="normal">                      </span><span class="usertype">GtkCellEditable</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">editable</span><span class="symbol">,</span>
<span class="normal">                      </span><span class="keyword">const</span><span class="normal"> </span><span class="usertype">gchar</span><span class="normal">     </span><span class="symbol">*</span><span class="normal">path</span><span class="symbol">,</span>
<span class="normal">                      </span><span class="usertype">gpointer</span><span class="normal">         data</span><span class="symbol">)</span>
<span class="cbracket">{</span>
<span class="normal">  </span><span class="keyword">if</span><span class="normal"> </span><span class="symbol">(</span><span class="function">GTK_IS_ENTRY</span><span class="normal"> </span><span class="symbol">(</span><span class="normal">editable</span><span class="symbol">))</span><span class="normal"> </span>
<span class="normal">    </span><span class="cbracket">{</span>
<span class="normal">      </span><span class="usertype">GtkEntry</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">entry </span><span class="symbol">=</span><span class="normal"> </span><span class="function">GTK_ENTRY</span><span class="normal"> </span><span class="symbol">(</span><span class="normal">editable</span><span class="symbol">);</span>
<span class="normal">      </span>
<span class="normal">      </span><span class="comment">/* ... create a GtkEntryCompletion */</span>
<span class="normal">      </span>
<span class="normal">      </span><span class="function"><a href="GtkEntry.html#gtk-entry-set-completion">gtk_entry_set_completion</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">entry</span><span class="symbol">,</span><span class="normal"> completion</span><span class="symbol">);</span>
<span class="normal">    </span><span class="cbracket">}</span>
<span class="cbracket">}</span></pre></td>
      </tr>
    </tbody>
  </table>
</div>

<p>
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>renderer</code></em> :</span></p></td>
<td>the object which received the signal</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>editable</code></em> :</span></p></td>
<td>the <a class="link" href="GtkCellEditable.html" title="GtkCellEditable"><span class="type">GtkCellEditable</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>path</code></em> :</span></p></td>
<td>the path identifying the edited cell</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>user data set when the signal handler was connected.</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.6</p>
</div>
</div>
<div class="refsect1">
<a name="GtkCellRenderer.see-also"></a><h2>See Also</h2>
<p>
<a class="link" href="GtkCellRendererText.html" title="GtkCellRendererText"><span class="type">GtkCellRendererText</span></a>,<a class="link" href="GtkCellRendererPixbuf.html" title="GtkCellRendererPixbuf"><span class="type">GtkCellRendererPixbuf</span></a>,<a class="link" href="GtkCellRendererToggle.html" title="GtkCellRendererToggle"><span class="type">GtkCellRendererToggle</span></a>
</p>
</div>
</div>
<div class="footer">
<hr>
          Generated by GTK-Doc V1.18</div>
</body>
</html>